三種方法讀取鍵值 使用者設(shè)計(jì)行列鍵盤介面,一般常採用三種方法讀取鍵值。 中斷式 在鍵盤按下時(shí)產(chǎn)生一個(gè)外部中斷通知CPU,並由中斷處理程式通過不同位址讀資料線上的狀態(tài)判斷哪個(gè)按鍵被按下。 本實(shí)驗(yàn)採用中斷式實(shí)現(xiàn)使用者鍵盤介面。 掃描法 對(duì)鍵盤上的某一行送低電位,其他為高電位,然後讀取列值,若列值中有一位是低,表明該行與低電位對(duì)應(yīng)列的鍵被按下。否則掃描下一行。 反轉(zhuǎn)法 先將所有行掃描線輸出低電位,讀列值,若列值有一位是低表明有鍵按下;接著所有列掃描線輸出低電位,再讀行值。 根據(jù)讀到的值組合就可以查表得到鍵碼。4x4鍵盤按4行4列組成如圖電路結(jié)構(gòu)。按鍵按下將會(huì)使行列連成通路,這也是見的使用者鍵盤設(shè)計(jì)電路。 //-----------4X4鍵盤程序--------------// uchar keboard(void) { uchar xxa,yyb,i,key; if((PINC&0x0f)!=0x0f) //是否有按鍵按下 {delayms(1); //延時(shí)去抖動(dòng) if((PINC&0x0f)!=0x0f) //有按下則判斷 { xxa=~(PINC|0xf0); //0000xxxx DDRC=0x0f; PORTC=0xf0; delay_1ms(); yyb=~(PINC|0x0f); //xxxx0000 DDRC=0xf0; //復(fù)位 PORTC=0x0f; while((PINC&0x0f)!=0x0f) //按鍵是否放開 { display(data); } i=4; //計(jì)算返回碼 while(xxa!=0) { xxa=xxa>>1; i--; } if(yyb==0x80) key=i; else if(yyb==0x40) key=4+i; else if(yyb==0x20) key=8+i; else if(yyb==0x10) key=12+i; return key; //返回按下的鍵盤碼 } } else return 17; //沒有按鍵按下 }
標(biāo)簽: 4x4 鍵盤
上傳時(shí)間: 2013-11-12
上傳用戶:a673761058
1、限幅濾波法(又稱程序判斷濾波法) 2、中位值濾波法 3、算術(shù)平均濾波法 4、遞推平均濾波法(又稱滑動(dòng)平均濾波法) 5、中位值平均濾波法(又稱防脈沖干擾平均濾波法) 6、限幅平均濾波法 7、一階滯后濾波法 8、加權(quán)遞推平均濾波法 9、消抖濾波法 10、限幅消抖濾波法
標(biāo)簽: 濾波 限幅 干擾 程序
上傳時(shí)間: 2014-01-09
上傳用戶:cazjing
oracle erp 11.5.x 中如何到如數(shù)據(jù)的代碼,慎重使用!
標(biāo)簽: oracle erp 11 數(shù)據(jù)
上傳時(shí)間: 2013-11-28
上傳用戶:semi1981
利用DSK6711外部,有四個(gè)外部中斷埠,可以使用此四個(gè)埠,控制內(nèi)部LED顯示,並於CCS顯示目前中斷是何埠。
標(biāo)簽: 6711 DSK
上傳時(shí)間: 2014-01-04
上傳用戶:Avoid98
單片機(jī)數(shù)字濾波的十種方法:1、限幅濾波法(又稱程序判斷濾波法)2、中位值濾波法3、算術(shù)平均濾波法4、遞推平均濾波法(又稱滑動(dòng)平均濾波法)5、中位值平均濾波法(又稱防脈沖干擾平均濾波法)6、限幅平均濾波法7、一階滯后濾波法8、加權(quán)遞推平均濾波法9、消抖濾波法10、限幅消抖濾波法
標(biāo)簽: 濾波 限幅 單片機(jī) 數(shù)字濾波
上傳時(shí)間: 2015-08-26
上傳用戶:gdgzhym
8051-CRC 16 校驗(yàn)檢查碼 CRC16 校驗(yàn)檢查碼- 源碼 asm
標(biāo)簽: CRC 8051 16 asm
上傳時(shí)間: 2013-12-27
上傳用戶:franktu
用來設(shè)定中斷TIMER0把計(jì)算出來的秒數(shù)輸出
標(biāo)簽: TIMER0
上傳時(shí)間: 2015-11-08
上傳用戶:ddddddos
Atmel 系列UART & USART範(fàn)例程式,Polling與中斷兩種方式
標(biāo)簽: Polling Atmel USART UART
上傳時(shí)間: 2015-11-22
上傳用戶:凌云御清風(fēng)
Java EE 5.0 中使用依賴注入 Java EE 5.0 中使用依賴注入
標(biāo)簽: Java 5.0 EE
上傳時(shí)間: 2015-11-26
上傳用戶:huangld
三星s3c2440 BSP for WinCE 5.0 中IIS驅(qū)動(dòng)
標(biāo)簽: s3c2440 WinCE BSP 5.0
上傳時(shí)間: 2015-12-23
上傳用戶:lx9076
蟲蟲下載站版權(quán)所有 京ICP備2021023401號(hào)-1